WCET analysis of multi-level set-associative instruction caches
نویسندگان
چکیده
With the advent of increasingly complex hardware in real-time embedded systems (processors with performance enhancing features such as pipelines, cache hierarchy, multiple cores), many processors now have a set-associative L2 cache. Thus, there is a need for considering cache hierarchies when validating the temporal behavior of real-time systems, in particular when estimating tasks’ worst-case execution times (WCETs). To the best of our knowledge, there is only one approach for WCET estimation for systems with cache hierarchies [10], which turns out to be unsafe for setassociative caches. In this paper, we highlight the conditions under which the approach described in [10] is unsafe. A safe static instruction cache analysis method is then presented. Contrary to [10] our method supports set-associative and fully associative caches. The proposed method is experimented on medium-size and large programs. We show that the method is most of the time tight. We further show that in all cases WCET estimations are much tighter when considering the cache hierarchy than when considering only the L1 cache. An evaluation of the analysis time is conducted, demonstrating that analysing the cache hierarchy has a reasonable computation time. Key-words: WCET, hard real time systems, memory hierarchy, static analysis, abstract interpretation. This study was partially supported by the french National Research Agency project Mascotte (ANR05-PDIT-018-01) Analyse pire cas des hiérarchies de caches d’instruction associatifs par ensemble Résumé : Avec l’arrivée de matériel complexe dans les systèmes temps-réel embarqués (processeurs avec des fonctions d’amélioration des performances tel que les pipelines, les hiérarchies de caches, les multi-cœurs), de nombreux processeurs ont maintenant des caches L2 associatifs par ensemble. Ainsi, considérer les hiérarchies de caches lors de la validation du comportement temporel des systèmes temps-réel, en particulier lors de l’estimation d’une borne supérieure du pire temps d’exécution des tâches s’exécutant sur le système devient nécessaire. A notre connaissance, il existe une seule approche traitant des hiérarchies de caches pour le calcul de cette borne [10], qui s’avère être non sûre pour les caches associatifs par ensemble. Dans ce rapport, nous présentons les conditions pour lesquelles l’approche décrite dans [10] est non sûre. Une approche statique sûre est présentée pour les caches d’instruction. A l’opposé de [10], notre méthode supporte les caches associatifs par ensemble et les caches totalement associatifs. Cette méthode est expérimentée sur des programmes de test ainsi qu’une application réelle. Nous montrons que notre méthode est la plupart du temps précise et l’estimation du pire temps d’exécution est toujours plus précise en considérant la hiérarchie de cache comparativement à un seul niveau de cache. Une évaluation du temps de calcul est réalisée montrant que l’analyse de la hiérarchie de cache est effectuée en un temps raisonnable. Mots-clés : pire temps d’exécution,, temps-réel strict, hiérarchie mémoire, analyse statique, interprétation abstraite. WCET analysis of multi-level set-associative instruction caches 3
منابع مشابه
Generalizing timing predictions to set-associative caches
Recently, research on the static prediction of worst-case execution time (WCET) of programs has been extended from simple CISC to pipelined RISC processors, and from uncached architectures to direct-mapped instruction caches. This work goes one step further by introducing a framework to handle WCET prediction for set-associative caches. Generalizing the work of static cache simulation of direct...
متن کاملGeneralizing Timing Predictions to Set-Associative Caches
Hard real-time systems rely on the assumption that the deadlines of tasks can be met { otherwise the safety of the controlled system is jeopardized. Several scheduling paradigms have been developed to support the analysis of a task set and determine if a schedule is feasible. These scheduling paradigms rely on the assumption that the worst-case execution time (WCET) of hard real-time tasks be k...
متن کاملImpact of instruction cache replacement policy on the tightness of WCET estimation
Cache memories have been introduced to decrease the access time to the information due to the increasing gap between fast micro-processors and relatively slower main memories. Thus, there is a need for considering caches when validating the temporal behavior of real-time systems, in particular when estimating tasks’ worst-case execution times (WCETs). In this paper, we use new theoretical resul...
متن کاملTiming Analysis for Data Caches and Set-Associative Caches
The contributions of this paper are twofold. First, an automatic tool-based approach is described to bound worst-case data cache performance. The given approach works on fully optimized code, performs the analysis over the entire control ow of a program, detects and exploits both spatial and temporal locality within data references, produces results typically within a few seconds, and estimates...
متن کاملBounding Worst-Case Data Cache Performance by Using Stack Distance
Worst-case execution time (WCET) analysis is critical for hard real-time systems to ensure that different tasks can meet their respective deadlines. While significant progress has been made for WCET analysis of instruction caches, the data cache timing analysis, especially for setassociative data caches, is rather limited. This paper proposes an approach to safely and tightly bounding data cach...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- CoRR
دوره abs/0807.0993 شماره
صفحات -
تاریخ انتشار 2008